1. Technical Field
The present invention relates to an improved data processing system. More specifically, the present invention is directed to a method, apparatus, and computer program product for the detection, inventory, and installation of an operating system on network boot capable computers.
2. Description of Related Art
A desktop management interface is a management system for personal computers developed by the Distributed Management Task Force. The desktop management interface, or DMI, provides a bi-directional path to interrogate all the hardware and software components within a computer. When computers are DMI-enabled, the hardware and software configurations of the computers may be monitored over a network from a central station.
A computer utilizing DMI technology has a memory-resident agent residing in the background of the operating system. When the DMI queries the agent, the agent will respond by sending back data contained in a management information file and/or activating a management information file routine. The management information file may contain static data, such as, computer model identification, serial number, memory and port addresses. A management information file routine may, for example, report errors to a management console as errors occur, or the management information file routine may scan read-only-memory or random-access-memory chips and report their contents, as well.
Wired for management (WfM) is a specification from the Intel™ Corporation for a computer that can be centrally managed in a network. The computer must be DMI compliant, be accessible by a management server prior to booting, contain instrumentation for component discovery and identification and include remote wake-up capabilities. A preboot execution environment (PXE) is an Intel™ WfM capability that enables a computer to boot from a server. PXE enables remote booting of an operating system; remote emergency booting of a diagnostic program; and remote new system startup, which will boot an installation program to install an operating system. PXE is supported in the basic input output system (BIOS). BIOS is an essential set of routines in a computer, which are stored on a chip and provides an interface between the operating system and the hardware.
The operating system (OS) is the master control program that runs a data processing system. The OS starts and communicates with all software programs that run in the data processing system.
A dynamic host configuration protocol (DHCP) is a software program that automatically assigns internet protocol (IP) addresses to client stations logging onto a transmission control protocol/internet protocol (TCP/IP) network. An IP address is the address of a computer attached to an IP network. Every client and server station must have a unique IP address. A trivial file transfer protocol (TFTP) is a version of the TCP/IP file transfer protocol that has no directory or password capability.
For clarification, a client is a requesting machine and a server is a supplying machine, both of which are connected via a network. A client has either a permanent IP address or one that is dynamically assigned to a client when booted. DHCP eliminates having to manually assign permanent IP addresses to a client. DHCP software typically runs in servers and is also found in network devices, such as, integrated services digital network (ISDN) routers and modem routers that allow a multitude of users access to the Internet.
A bootstrap protocol (BOOTP) is a TCP/IP protocol used by a diskless workstation or network computer to obtain its IP address and other network information such as server address and default gateway. Upon startup, a client sends out a BOOTP request in a user datagram protocol (UDP) packet to the BOOTP server, which returns the required information.
A problem with existing remote inventory and deployment systems, such as, for example, Rembo™ Auto-Deploy Technology, International Business Machines™ Corporation's Remote Deployment Manager, or Microsoft™ Window Server 2003 Automated Deployment Services, is that the above listed systems are limited to supporting only one type of computer hardware or operating system. Another problem with current client/server management systems is that all information with regard to a client machine has to be input into a database manually by the system administrator using a graphical user interface (GUI) or by importing a file containing the required information.
Therefore, it would be advantageous to have an improved method and apparatus for the detection, inventory, and deployment of an operating system to network boot capable computers.